package com.pxst.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.pxst.entity.TaskEntity;
import com.pxst.req.CreateTaskRsp;
import com.pxst.req.PageTaskRsp;
import com.pxst.req.UpdateTaskRsp;
import com.pxst.resp.ApiResp;
import com.pxst.resp.PageResp;

/** 
* @author yangxy
* @version 创建时间：2023年8月15日 上午11:35:22 
*/
public interface TaskService extends IService<TaskEntity> {
	/**
	 * 添加定时器
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午2:34:47 
	* @param createTaskDto
	 */
	public ApiResp<String> addTask(CreateTaskRsp createTaskDto);
	
	/**
	 * 更新定时器
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午2:34:56 
	* @param updateTaskDto
	 */
	public ApiResp<String> updateTask(UpdateTaskRsp updateTaskDto);
	
	/**
	 * 停用指定定时器
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午2:35:09 
	* @param id
	 */
	public ApiResp<String> stopTask(Long id);
	
	/**
	 * 启用指定定时器
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午2:35:09 
	* @param id
	 */
	public ApiResp<String> runTask(Long id);
	
	/**
	 * 停用所有定时
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午2:35:17
	 */
	public ApiResp<String> stopAllTask();
	
	/**
	 * 分页查询定时器
	* @author yangxy
	* @version 创建时间：2023年8月15日 下午3:22:03 
	* @param pageTaskDto
	* @return
	 */
	public ApiResp<PageResp<TaskEntity>> page(PageTaskRsp pageTaskDto);
	
	/**
	 * 立即执行指定定时器
	* @author yangxy
	* @version 创建时间：2023年9月4日 下午2:35:59 
	* @param id
	* @return
	 */
	public ApiResp<PageResp<TaskEntity>> run(Long id);
}
